/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package db.interfaces;


import core.School;
import core.Program;
import core.Course;
import java.util.Collection;

/**
 *
 * @author Anton
 */
public interface SchoolDAO
{    
    School getSchoolById(long id);

    Collection<School> searchForSchoolsByName(String beginsWith);
    Collection<School> searchForSchoolsByParameters(String beginsWith, String fieldName, boolean asc);
    Collection<School> getSchoolsByName(String name);
    Collection<School> getAllSchools();
    
    boolean addProgramToSchool(School school, Program program);
    boolean deleteProgramFromSchool(School school, Program program);

    boolean addCourseToSchool(School school, Course course);
    boolean deleteCourseFromSchool(School school, Course course);

    boolean containsSchool(School school);
    boolean addSchool(School school);
    boolean editSchool(School school);
    boolean deleteSchool(School school);
}
